package com.yc.study.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.yc.study.entity.Job;
import com.yc.study.vo.JobVo;

import java.util.List;

/**
 * 服务类
 *
 * @author 王妍
 * @since 2022-02-20
 */
public interface IJobService extends IService<Job> {
  /**
   * 保存作业
   *
   * @param job 作业的标题
   * @param username 教师名字
   */
  void saveJob(JobVo job, String username);

  /**
   * 通过课程id 查询作业列表
   *
   * @param jobVoPage 分配条件
   * @param courseId 课程id
   * @return 作业页
   */
  Page<JobVo> loadPageVoByCourseId(Page<JobVo> jobVoPage, Long courseId);

  /**
   * 通过vo查询作业列表
   *
   * @param page 分页参数
   * @param jobVo 条件参数
   * @return 作业信息列表
   */
  Page<JobVo> loadPageVoByTeacherId(Page<JobVo> page, JobVo jobVo);

  /**
   * 通过作业id删除作业
   *
   * @param asList 作业id 集合
   */
  void deleteJobs(List<Long> asList);

  /** 加载作业列表通过 学生id */
  Page<JobVo> loadPageVoByStudentId(Page<JobVo> jobVoPage, Long id);
}
